#ifndef LogH
#define LogH

#include <map>
#include <windows.h>
#include <vcl\Classes.hpp>

#include "Plugin.h"
#include "Config.h"

using namespace std;

class Log {
    typedef map<AnsiString, TStringList*>::iterator iterator; // Test!
    private:
        TStringList* log;
    public:
        Log();
        Log(TStringList *Source);
        void Assign(TStringList *Source);
        void Clear();
        void SaveToFile(AnsiString FileName);
        void LoadFromFile(AnsiString FileName);
        void appendFromFile(AnsiString FileName);
        Log *clean(Plugin *plugin, Config *config);
        void changeCP();
        TStringList* GetAll();
        ~Log();
};

TStringList* UTF8ToAnsiList(TStrings* Source);
#endif
